package com.shangjinrong.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.shangjinrong.domain.BorrowInfo;
import com.shangjinrong.domain.Lend;
import com.shangjinrong.domain.vo.BorrowInfoApprovalVO;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * @author Naruto
 */
public interface LendService extends IService<Lend> {
    /**
     * 分页
     *
     * @param page   分页对象
     * @param search 搜索条件
     * @return 返回带数据的分页对象
     */
    IPage<Lend> findPage(IPage page, String search);

    /**
     * 创建标的
     *
     * @param borrowInfoApprovalVo
     * @param borrowInfo
     */
    void createLend(BorrowInfoApprovalVO borrowInfoApprovalVo, BorrowInfo borrowInfo);

    /**
     * 根据id获取标的详细
     *
     * @param id id
     * @return 标的详情
     */
    Map<String, Object> getLendDetail(Long id);

    /**
     * 放款
     *
     * @param id lendId
     */
    void makeLoan(Long id);

    /**
     * 获取所有正在筹款的标的
     *
     * @return 所有在筹款中的标的
     */
    List<Lend> getLendList();


    BigDecimal getInterestCount(BigDecimal invest, BigDecimal yearRate, Integer totalmonth, Integer returnMethod);

}
